This chapter discusses the creation and maintenance of RAID sets that comprise a specific list of physical disks. All of the disks in a single RAID enclosure, along with the disks in any attached expansion enclosure, are controlled by the pair of RAID controllers in the RAID enclosure. This pair of RAID controllers and their attached disks form a single RAID subsystem. The SpinServer has as many RAID subsystems as it has RAID enclosures.
Each RAID subsystem is configured individually. By using the management software, you can identify which disks belong to which RAID subsystem and the state of each disk. Normally, individual disks can be part of a RAID set, be used as a hot spare, or be labeled as uncommitted.
Note: The information in this chapter applies only to SpinStor storage. This information does not apply to Network Appliance FAS270c storage or to any third-party vendors' storage. For information on managing LUNs on Network Appliance storage, see the FAS270c documentation.
A RAID set is a group of disks that work together to form a logical disk that is larger, faster, and more reliable than the individual disks. After a RAID set has been created, it can be configured as one large, fast disk for the purpose of setting up file systems.
If a disk from a RAID set fails, a hot spare is used to replace it. Due to this redundancy, the RAID set can operate even after one of its disks has failed. If a hot spare disk is available, the RAID controller can reconstruct the data that is stored on the failed disk and place the data onto the hot spare. After this rebuilding process is complete, the RAID set regains its performance and reliability. There can be more than one hot spare disk in a RAID subsystem. In this case, when a hot spare is needed to rebuild a RAID set, any hot spare disk can be used. The hot spare does not need to be physically located near the rest of the RAID set.
If a hot spare is not available, the RAID set cannot be rebuilt until a hot spare is provided. You can do this by removing the disk that has failed and replacing it with a new disk.
An uncommitted disk can be used in different ways. It can be combined with other uncommitted disks to form a RAID set, or it can be designated as a hot spare.
Note: The raid commands report the sizes of disk drives in gigabytes; however, the commands interpret “gigabyte” as 230 (1,073,741,824) bytes, not one billion bytes. Most disk-drive manufacturers interpret “gigabyte” as one billion bytes, so there can be a discrepancy between the output of the commands and the label on the disk. For instance, the commands can report a 36-GB drive as having a physical size of 34 GB.
If the SpinServer includes RAID sets that were preconfigured at the factory and background initialization is enabled, you are ready to create storage pools and virtual file systems. However, if the SpinServer does not include RAID sets that were preconfigured at the factory, creating a RAID set is your first RAID management task.
Furthermore, for every system, preconfigured or not, routine RAID management tasks must be done. These routine RAID management tasks are described in this chapter and include the following:
Create RAID sets when a new SpinStor RAID enclosure is added to the system
Modify configurations
Locate RAID sets
Replace faulty disks
Before using a RAID enclosure, you must confirm that it is in the expected configuration by checking the following:
Determine that five or six disks in each enclosure can be correctly located by using the raid diskdrives locate command.
Determine that RAID sets can be correctly located as they are created by using the raid sets locate command.
Ensure that the enclosure's temperature, power supply, and blower monitoring functions are working as demonstrated by the LEDs on the enclosure and by using the raid enclosures show command.
Verify that half of the disks in each enclosure are using Channel 0 and the rest are using Channel 1, as shown by the raid diskdrives show command.
Verify that status of all RAID controllers is Active, as shown by the raid controllers show command. Critical status is not acceptable during initial configuration.
The device identification for a RAID set is in the format rsubsystem_numbersraidset_number, where subsystem_number indicates the RAID subsystem and raidset_number indicates the specific RAID set. For example, a device ID of r0s1 indicates that the device is on RAID subsystem 0 and has a RAID set number of 1.
If the SpinServer does not include RAID sets that were preconfigured at the factory, or if you are adding a new SpinStor RAID enclosure to a system, your first step is to create a RAID set. If you set the new RAID set's status to online, the RAID set is available as soon as you create it. However, if you designate the status as offline, the RAID set is created but is not immediately available for storage-pool creation. Use the raid sets makeonline command to create a storage pool.
Note: When you create the first RAID set on a RAID subsystem, the creation process can take as long as two minutes. The process takes this long because a Reset command is issued to the RAID controllers after the creation process is completed. This is necessary because the strip size and cache line size are updated from the previous settings. This type of change requires the RAID controllers to be reset. If the RAID set on a RAID subsystem is not the first one created, the creation process is completed in a shorter time period.
RAID sets have five possible RAID levels: 0, 1, 3, 5, and 0+1. These levels have the following requirements:
A RAID set of level 0 must have at least two (2) disks
A RAID set of level 1 must have exactly two (2) disks
A RAID set of level 3 must have at least three (3) disks
A RAID set of level 5 must have at least three (3) disks
A RAID set of level 0+1 must have at least four (4) disks
After the creation and configuration of a RAID set, initialization of the RAID set begins as a background process at the first use of the RAID set. For example, if you create storage pools and assign storage units (RAID sets or JBOD disks) to the storage pools, background initialization automatically starts. As background initialization proceeds on the RAID set, you can use the newly created storage pool attached to the RAID set to create a virtual server. After the virtual server is created, you can create a virtual interface, specifying an appropriate IP address and netmask. After creating and mounting a VFS, you can write data to the RAID set as background initialization continues.
Note: Background initialization can be a lengthy process. It can take approximately one hour for every 70 GB of disk capacity. For example, initializing a 240-GB RAID set can take about three and one-half hours.
To create a RAID set, use the raid sets new command. The syntax of the command follows.
raid sets new -raidlevel {0 | 1 | 3 | 5 | 0+1} -stripsize {8 | 16 | 32 | 64} -writecacheenabled {true | false} -status RAID_status -disks [list_of_disks]
The following example creates a new RAID set. Explanations of the values are listed after the example.
spinserver::> raid sets new -raidlevel 5 -stripsize 8 -writecacheenabled true -status Online -disks [r0d1, r0d2, r0d5, r0d6, r0d9, r0d10, r0d13, r0d14, r0d17, r0d18, r0d21, r0d22, r0d25, r0d26, r0d29, r0d30]
where
5 is the RAID level. Possible RAID levels are 0, 1, 3, 5, and 0+1. The defalt level is 5.
8 is the RAID strip size in KB. The default setting is 32 KB. Other setting options are 16 KB, 32 KB, or 64 KB. A RAID strip is a piece of a single disk that is used for data storage. A RAID stripe is a set of the corresponding strips from all of the disks in a RAID set. The RAID strip size must match the RAID strip size that is currently set on the RAID controller. For best performance when using hardware-based RAID systems such as SpinStor disk arrays, NetApp recommends a total stripe size of 128 KB. To determine the proper strip size, divide 128 KB by the number of data disks, excluding parity disks, in the RAID set. For instance, if the RAID set has 16 data disks, use a strip size of 8 KB (that is, 128 KB/16 disks).
true enables the write cache. This is the default setting for the write cache. Enabling the write cache can result in higher system performance but can cause data loss if an error occurs.
Online is the status of the RAID set. This is the default value.
[r0d1, r0d2, r0d5, r0d6, r0d9, r0d10, r0d13, r0d14, r0d17, r0d18, r0d21, r0d22, r0d25, r0d26, r0d29] are the disk IDs of the disks to be included in the RAID set. The maximum number of disks in a single RAID set is 16. By default, all unused disk drives (up to 16) are included. If you are using the CLI and press the Tab key after the -disks parameter, all unused disk drives (up to 16) are automatically listed.
After creating one or more RAID sets, you can display information about the RAID sets by using the raid sets show command. The command can be used without any parameters to display information about all RAID sets or with the -deviceid parameter to display information about a specific RAID set. The command displays the following information:
RAID level
Logical size (MB)
Physical size (MB)
Strip size (KB)
Cache line size (KB)
Initialization status
Status of write cache (enabled or disabled)
RAID set status (online or offline)
Number of disks in the RAID set
List of disks by ID number
LongOp in progress status (LongOp refers to operations that take a long time to complete; for example, RAID set initialization, rebuilding, and consistency checking)
The syntax of the command follows.
raid sets show [-deviceid device_ID]
The following example displays information about a RAID set with the device ID r0s0.
spinserver::> raid sets show -deviceid r0s0 Device ID r0s0 RAID Level 5 Logical Size (MB) 69424 Physical Size (MB) 104136 Strip Size (KB) 8 Cache Line Size (KB) 8 Initialized? true Write Cache Enabled? false Status Online # Disks 3 Disks r0d2, r0d6, r0d10 LongOp In Progress None
To toggle the status of the write cache for a RAID set, use the raid sets modify command. To enable the write cache, use true as the argument. To disable the write cache, use false as the argument. The default setting is false.
Enabling the write cache can result in higher system performance, but can cause data loss if an error occurs.
The syntax of the command follows.
raid sets modify -deviceid device_ID -writecacheenabled {true | false}
The following example toggles the status of the write cache for a RAID set with an ID of r0s0 to true.
spinserver::> raid sets modify -deviceid r0s0 -writecacheenabled true
If data on a RAID set becomes obsolete and is moved to an archive, you can delete the RAID set and free the storage space for other projects by using the raid sets delete command. Deleting a RAID set removes all information stored on the physical disks in the RAID set. For this reason, if the data is to be maintained, it is important to transfer the data to another location before deleting the RAID set.
The syntax of the command follows.
raid sets delete -deviceid device_ID
The following example deletes a RAID set with the ID r0s0.
spinserver::> raid sets delete -deviceid r0s0
Note: RAID sets in a RAID subsystem must be deleted in the reverse order in which they were created. For example, if the RAID sets in a RAID subsystem are r0s0, r0s1, and r0s2, you must delete r0s2 before deleting r0s1, and delete r0s0 last.
Note: Long-running operations including background initialization, rebuilding, and consistency checking must be stopped or allowed to complete before you delete a RAID set. If the raid sets delete command is issued while a long-running operation is running, a warning message is displayed and the RAID set is not deleted.
To determine the physical location of the disks that are included in a specific RAID set, use the raid sets locate command. The command causes the front panel LEDs of the disks in the RAID set to blink for the time specified in the command. The syntax of the command follows.
raid sets locate -deviceid device_ID -time minutes
The following example locates a RAID set with the ID r0s0 and causes the front-panel LEDs of the disks in the RAID set to blink for 2 minutes.
spinserver::> raid sets locate -deviceid r0s0 -time 2
To display the IDs of the disks that are included in a RAID set, use the raid sets show-disks command. The command can be used without any parameters to display information about the disks in all RAID sets in the system or with the -deviceid parameter to display information about a specific RAID set. The syntax of the command follows.
raid sets show-disks [-deviceid device_ID]
The following example displays information about the disks in a RAID set with the ID r0s0.
spinserver::> raid sets show-disks -deviceid r0s0
When background initialization is enabled, the initialization process runs in the background. Although the initialization process can be very lengthy when it is performed in the background, other system processes can continue. Initialization can take about one hour for every 70 GB of disk capacity. For example, initializing a 240-GB RAID set can take about three and one-half hours.
Background initialization is enabled by default. To manually start background initialization, use the raid sets startbkginit command. The command has the following syntax:
raid sets startbkginit -deviceid device_ID
The following example starts background initialization on a RAID set named r0s0:
spinserver::> raid sets startbkginit -deviceid r0s0
To check the status of background initialization, use the raid sets bkginitstatus command.
Note: The raid sets bkginitstatus command works only if background initialization is enabled. Background initialization is enabled by default.
The syntax of the command follows.
raid sets bkginitstatus -deviceid device_ID
The following example checks the status of the background initialization of a RAID set with the ID r0s0.
spinserver::> raid sets bkginitstatus -deviceid r0s0 Action "Background Init Status" returned with the following status: Not in progress
If a bad block is encountered on a disk during background initialization, the initialization process fails. To work around this problem, use one of the following approaches:
Replace the bad disk and continue with background initialization, as follows:
Identify the disk on which the bad block is located, and ensure that no problems exist on the other disks in the array.
Pull the affected disk from the enclosure and wait until the status of the RAID set is reported as Critical.
Reinsert the affected disk into the enclosure. The rebuilding process starts automatically.
The advantage of this approach is that the RAID set remains online during the procedure. Disadvantages include the need to locate and manipulate the affected disk array, and the possibility of RAID-set corruption if there is a bad block on any other disk in the array.
Use foreground initialization to initialize the RAID set, as follows:
Ensure that background initialization is complete on all other RAID sets.
Use the filestorage vfs move command to move any VFSs from the storage pool or pools that are located on the affected RAID set. For more information, see Section 13.2.8.
Use the storage pools delete or tools storage pools forcedelete command to delete the affected storage pool or pools. For more information, see Section 11.2.10 and Section 19.2.15, respectively.
Use the raid sets modify command to disable background initialization on the affected RAID set or sets. For more information, see Section 10.2.1.3.
Use the raid sets startinit command to initialize the affected RAID set or sets. For more information, see Section 10.2.1.10. Note that foreground initialization can be a lengthy process.
When initialization has completed, recreate the storage pool or pools on the affected RAID set, then move the VFSs back to the storage pool or pools.
The advantages of this approach are the ability to perform all tasks remotely through the management interface and the relative safety of the procedure (that is, because VFSs are moved off of the affected storage pool during the procedure). Disadvantages include the longer time requirement and the need for space on other storage pools to hold VFSs while the RAID set is being initialized.
After the RAID set is fully initialized, a bad block does not interfere with the correct operation of the RAID set.
If background initialization is disabled, initialize a RAID set by using the raid sets startinit command. The syntax of the command follows.
raid sets startinit -deviceid device_ID
Note: Initializing a RAID set with the raid sets startinit command can be a lengthy process. Depending on the size and RAID level of the RAID set, it can take up to four hours. During this time, the RAID set is unusable for other processes. For these reasons, background initialization is recommended.
The following example initializes a RAID set with the device ID r0s0.
spinserver::> raid sets startinit -deviceid r0s0
To stop initialization of a RAID set when background initialization is disabled, use the raid sets stopinit command. The syntax of the command follows.
raid sets stopinit -deviceid device_ID
The following example stops the initialization of a RAID set with an ID of r0s0.
spinserver::> raid sets stopinit -deviceid r0s0
The degree of completion of the initialization of a RAID set can be determined by using the raid sets initstatus command. The syntax of the command follows.
raid sets initstatus -deviceid device_ID
The following example displays the initialization status of a RAID set with an ID of r0s0.
spinserver::> raid sets initstatus -deviceid r0s0
When maintenance on more than one disk in a RAID set is necessary, you must take the RAID set offline before you begin the disk-maintenance tasks. Such tasks include the physical replacement of one or more malfunctioning disks or changing the physical location of a disk; that is, moving a disk from one slot to another, thereby causing the disk ID to change within the disk enclosure.
To take a RAID set offline, use the raid sets makeoffline command. The syntax of the command follows.
raid sets makeoffline -deviceid device_ID
The following example takes a RAID set with an ID of r0s0 offline.
spinserver::> raid sets makeoffline -deviceid r0s0
After completing disk-maintenance tasks, bring a RAID set back online by using the raid sets makeonline command.
Note: The raid sets makeonline command is used to bring a RAID set back online after the raid sets makeoffline command has been used to take a RAID set offline. If the RAID set already is online, using the raid sets makeonline command has no effect.
The syntax of the command follows.
raid sets makeonline -deviceid device_ID
The following example brings a RAID set with an ID of r0s0 online.
spinserver::> raid sets makeonline -deviceid r0s0
When maintenance on more than one disk in a RAID set is necessary, you must rebuild the RAID set by using the raid sets startrebuild command after the maintenance has been completed. Such disk-maintenance tasks include the physical replacement of one or more malfunctioning disks or changing the physical location of a disk; that is, moving a disk from one slot to another, thereby causing the disk ID to change within the disk enclosure. The syntax of the command follows.
raid sets startrebuild -deviceid device_ID
The following example begins the process of rebuilding a RAID set with the ID r0s0.
spinserver::> raid sets startrebuild -deviceid r0s0
Use the raid sets stoprebuild command to stop the rebuilding process of a specified RAID set. The syntax of the command follows.
raid sets stoprebuild -deviceid device_ID
The following example stops the rebuilding process of a RAID set with the ID r0s0.
spinserver::> raid sets stoprebuild -deviceid r0s0
Use the raid sets rebuildstatus command to check the status of the rebuilding process of a RAID set. The syntax of the command follows.
raid sets rebuildstatus -deviceid device_ID
The following example checks the status of the rebuilding process of a RAID set with the ID r0s0.
spinserver::> raid sets rebuildstatus -deviceid r0s0
By using the raid sets startconsistencycheck command, you can check that the parity information stored in a RAID set is correctly established. The RAID set uses parity to ensure that the data across a stripe is valid and that if a disk fails, the lost data can be accurately reconstructed.
To start a RAID set consistency check, use the raid sets startconsistencycheck command. Use the -restoreonerror parameter to set whether or not consistency errors are corrected; the default is false (that is, consistency errors are not corrected). The syntax of the command follows.
raid sets startconsistencycheck -deviceid device_ID -restoreonerror {true | false}
The following example starts a consistency check on the RAID set with ID r0s0, and does not correct errors in consistency (false).
spinserver::> raid sets startconsistencycheck -deviceid r0s0 -restoreonerror false
Use the raid sets stopconsistencycheck command to stop a consistency check on a specified RAID set. The syntax of the command follows.
raid sets stopconsistencycheck -deviceid device_ID
The following example stops a consistency check on the RAID set with ID r0s0.
spinserver::> raid sets stopconsistencycheck -deviceid r0s0
To determine the degree of completion of the consistency check of a RAID set, use the raid sets consistencycheckstatus command. The syntax of the command follows.
raid sets consistencycheckstatus -deviceid device_ID
The following example checks the status of a consistency check being run on the RAID set with ID r0s0.
spinserver::> raid sets consistencycheckstatus -deviceid r0s0 Action "Consistency Check Status" returned with the following status: In progress 50%
In some circumstances it can be necessary to forcibly delete a RAID set that cannot be deleted by using the raid sets delete command. In this case, use the tools raid sets forcedelete command. The command has the following syntax:
tools raid sets forcedelete -deviceid device_ID
The following example forcibly deletes a RAID set with the ID r0s0:
tools raid sets forcedelete -deviceid r0s0
A RAID subsystem consists of all the RAID controllers, disk enclosures, disk drives, and RAID sets that are connected to a single SpinServer. A RAID set is a grouping of three or more disks to create a storage space that is larger in size and more reliable than a single disk drive.
The device identification for a RAID subsystem is in the format of rsubsystem_number, where subsystem_number indicates the specific RAID subsystem. An example of an ID for the RAID subsystem is r0.
The raid subsystems show command identifies a given RAID subsystem or all RAID subsystems on the SpinServer system. After identification is made, the following information about the RAID subsystem or subsystems is displayed by the system:
Subsystem ID
Names of servers connected to the RAID subsystem
Identification of the RAID controllers connected to the RAID subsystem
Disk enclosures connected to the RAID subsystem
Number of disk enclosures connected to the RAID subsystem
Number of disks in the RAID subsystem
Number of RAID sets included in the RAID subsystem
Background initialization setting (true or false).
Rebuild rate (percentage)
The syntax of the command follows.
raid subsystems show [-id ID]
The following example displays configuration information about a RAID subsystem with an ID of r0.
spinserver::> raid subsystems show -id r0 ID r0 Status Online Host Connections (p417 -- r0c0) , (p417 -- r0c1) SpinServers Connected p417 Controllers r0c0, r0c1 RAID sets r0s0, r0s1, r0s2, r0s3, r0s4, r0s5 Enclosures r0e1, r0e2 Battery r0b1 # Enclosures 2 # Disks 32 # RAID sets 6 Background Init true Rebuild Rate (%) 0
The raid subsystems events command displays events that have occurred on a particular RAID controller. This is useful for diagnosing problems with RAID arrays. The command has the following syntax:
raid subsystems events -id ID -number number_of_events
In this command, -id ID specifies the ID of the RAID controller whose events are to be displayed, and -number number_of_events specifies the number of events that are to be displayed. If this value is higher than the number of messages from the RAID controller, then all of the messages from the controller are displayed.
The following command displays the first 10 events for the RAID subsystem r0.
spinserver::> raid subsystems events -id r0 -number 10 Action "Raid Events" returned with the following status: 0: System (sys: r0) started successfully.[12 Aug 09:43:19] 1: Automatic reboot count has changed on System (sys: r0).[12 Aug 09:43:19] 2: Dual controllers enabled on System (sys: r0).[12 Aug 09:43:19] 3: Updated partner's status on System (sys: r0).[12 Aug 09:43:19] 4: Dual controllers entered nexus on System (sys: r0).[12 Aug 09:43:19] 5: System (sys: r0) started successfully.[12 Aug 09:43:19] 6: Automatic reboot count has changed on System (sys: r0).[12 Aug 09:43:19] 7: Dual controllers enabled on System (sys: r0).[12 Aug 09:43:19] 8: Updated partner's status on System (sys: r0).[12 Aug 09:43:19] 9: Controller started completed on System (sys: r0).[12 Aug 09:43:19]
Use the raid subsystems modify command to modify the background initialization setting and rebuild rate for the RAID subsystem. The syntax of the command follows.
raid subsystems modify -id ID -bkginit {true | false} -rebuildrate rebuild_rate
The following example enables background initialization (true) and sets the rebuild rate to 5 percent of the controller's CPU for a RAID subsystem named r0.
spinserver::> raid subsystems modify -id r0 -bkginit true -rebuildrate 5
The Self-Monitoring, Analysis, and Reporting Technology (SMART) is an open standard for developing disk drive and software systems that automatically monitors a disk's functional status and reports potential problems to the system. The reports from SMART enable you to proactively respond to disk failures. SMART is enabled by default.
To disable SMART for all the disk drives of a RAID subsystem, use the raid subsystems disablesmart command. The syntax of the command follows.
raid subsystems disablesmart -id ID
The following example disables SMART for a RAID subsystem with the ID r0.
spinserver::> raid subsystems disablesmart -id r0
To enable SMART for all the disk drives of a RAID subsystem, use the raid subsystems enablesmart command. The syntax of the command follows.
raid subsystems enablesmart -id ID
The following example enables SMART for a RAID subsystem with the ID r0.
spinserver::> raid subsystems enablesmart -id r0
The raid subsystems discoverenclosures command forces the SpinServer system to recognize a newly attached disk enclosure, either RAID or JBOD. The syntax of the command follows.
raid subsystems discoverenclosures -id ID
The following example forces the RAID subsystem named r0 to recognize a newly attached disk enclosure.
spinserver::> raid subsystems discoverenclosures -id r0
The raid subsystems updatediskfirmware command updates the firmware on all physical disks in a RAID subsystem from an absolute file path specified by the value of the -imagefile parameter. Note the following before upgrading disk firmware on a RAID subsystem:
| Caution: |
|
Upgrading the disk firmware can possibly but rarely cause data loss. It is recommended that you back up all of the data on the RAID subsystem or copy it to another storage pool before upgrading the disk firmware |
If a RAID set is in a critical state, it is not fault tolerant, and its disks' firmware cannot be upgraded until the RAID set is rebuilt.
If a failure occurs during the upgrade process, some of the disks can have the new firmware while other disks do not. In addition, one of the RAID sets can become critical because it has lost use of a disk. To restore normal operation, use a standard recovery technique such as rebuilding the RAID set by using a spare disk.
To modify the firmware on a specific disk, use the raid diskdrives updatefirmware command.
The syntax of the command follows.
raid subsystems updatediskfirmware -id ID -imagefile image_file_path
The following example updates the firmware on all physical disks in a RAID subsystem with the ID r0 from a firmware image located at /usr/ima/spin.ima.
spinserver::> raid subsystems updatediskfirmware -id r0 -imagefile /usr/ima/spin.ima
In the event of an error, use the raid subsystems reset command to reset the RAID subsystem. The RAID subsystem needs to be reset to refresh its status. The syntax of the command follows.
raid subsystems reset -id ID
The following example resets a RAID subsystem with the ID r0.
spinserver::> raid subsystems reset -id r0
To provide support personnel with configuration information to assist you in debugging a SpinServer system's RAID controllers, use the raid subsystems dumpconfig command. The command writes configuration information to a file specified by the value of the -file parameter. The syntax of the command follows.
raid subsystems dumpconfig -id ID -file file_path
The following example prints the configuration information for a RAID subsystem with the ID r0 to a file named /tmp/r0.dump.
spinserver::> raid subsystems dumpconfig -id r0 -file /tmp/r0.dump
Managing disk drives in a RAID subsystem includes the tasks of locating a particular disk or set of disks, displaying disk status information, and preparing a disk for removal from the enclosure.
The ID of the disks in a RAID subsystem is in the format rsubsystem_numberddisk_number, where subsystem_number indicates the RAID subsystem and disk_number indicates the specific disk drive.
Use the raid diskdrives show command to display information about all the disks in a RAID subsystem or information about one disk. The syntax of the command follows.
raid diskdrives show [-id ID]
The following example displays information about all disks in a RAID subsystem.
spinserver::> raid diskdrives show Device ID Capacity Status Used By Channel Target r0d1 33 GB Online r0s0 1 0 r0d10 33 GB Online r0s1 0 5 r0d13 33 GB Online r0s1 1 6 r0d14 33 GB Online r0s1 0 7 r0d17 33 GB Online r0s1 1 8 r0d18 33 GB Online r0s1 0 9 r0d2 33 GB Online r0s0 0 1 r0d21 33 GB Online r0s2 1 10 r0d22 33 GB Online r0s2 0 11 r0d25 33 GB Online r0s2 1 12 r0d26 33 GB Online r0s2 0 13 r0d29 33 GB Online r0s2 1 14 r0d5 33 GB Online r0s0 1 2 r0d6 33 GB Online r0s0 0 3 r0d9 33 GB Online r0s0 1 4 r1d33 33 GB Online r1s3 1 16 r1d34 33 GB Online r1s3 0 17 r1d37 33 GB Online r1s3 1 18 r1d38 33 GB Online r1s3 0 19 r1d41 33 GB Online r1s3 1 20 r1d42 33 GB Online r1s4 0 21 -- Type 'q' to quit and any key to continue --
The raid diskdrives locate command locates a disk in a system. The front-panel LED of the disk blinks for the number of minutes specified by the value of the -time parameter to indicate the location of the disk in the SpinStor. The default value of the -time parameter is 0, indicating that the LED blinks for less than one minute. The syntax of the command follows.
raid diskdrives locate -deviceid device_ID -time minutes
The following example locates a disk named r0d14 in a RAID subsystem and causes the front-panel LED of the disk to blink for 2 minutes.
spinserver::> raid diskdrives locate -deviceid r0d14 -time 2
The raid diskdrives checksense command returns sense data for a specified disk drive. Sense data is useful for diagnosing problems with the physical disk drive. The syntax of the command follows.
raid diskdrives checksense -deviceid device_ID
The following example returns sense data for a disk drive named r0d1.
spinserver::> raid diskdrives checksense -deviceid r0d1 Action "Check Sense" returned with the following status: 70 00 00 04 45 dc 6d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
The raid diskdrives makehotspare command identifies a disk by its disk ID and designates its status as a hot spare in a RAID subsystem. A hot spare is a replacement disk that can be used to rebuild all user data from a failed disk in the RAID subsystem. Use this command to create as many hot spares as the RAID subsystem requires. The syntax of the command follows.
raid diskdrives makehotspare -deviceid device_ID
The following example creates a hot spare for the RAID subsystem on the disk with ID r0d154.
spinserver::> raid diskdrives makehotspare -deviceid r0d154
Removing and replacing a disk from a disk enclosure involves the following steps:
Take the disk offline. See Section 10.2.3.5.1 for more information.
Inform the system that the disk is going to be removed. See Section 10.2.3.5.2 for more information.
Remove the disk.
Insert the replacement disk.
Bring the replacement disk online. See Section 10.2.3.5.3 for more information.
Before removing a disk from a RAID or attached expansion JBOD enclosure, you must take the disk offline.
Taking a disk offline is necessary when doing maintenance on the disk or replacing a faulty disk with a new one. The raid diskdrives makeoffline command identifies a disk by its disk ID and designates it for offline status. The syntax of the command follows.
raid diskdrives makeoffline -deviceid device_ID
The following example takes a disk with ID r0d14 offline.
spinserver::> raid diskdrives makeoffline -deviceid r0d14
Before physically removing a disk from a system, use the raid diskdrives prepareforremoval command to alert the RAID subsystem to the removal of the disk. The syntax of the command follows.
raid diskdrives prepareforremoval -deviceid device_ID
Important: After disengaging a drive from the enclosure, wait 30 seconds before pulling the carrier out of the enclosure. This enables the drive to properly spin down and shut down before you completely remove it from the enclosure.
The following example tells the system to prepare to have the disk with ID r0d14 removed.
spinserver::> raid diskdrives prepareforremoval -deviceid r0d14
After completing the required maintenance on the disk, or when replacing a disk with a new one, use the raid diskdrives makeonline command to bring a disk back online. The syntax of the command follows.
raid diskdrives makeonline -deviceid device_ID
The following example brings the disk with ID r0d12 online.
spinserver::> raid diskdrives makeonline -deviceid r0d12
Use the raid diskdrives selftest command to perform a check of the status of a physical disk in a RAID subsystem. The syntax of the command follows.
raid diskdrives selftest -deviceid device_ID -option options
The following example checks the status of a physical disk with the ID r0d12 by using default options.
spinserver::> raid diskdrives selftest -deviceid r0d12 -option default
To determine the degree of completion of a disk self-test, use the raid diskdrives selfteststatus command. The syntax of the command follows.
raid diskdrives selfteststatus -deviceid device_ID
The following example checks the status of the self-test of a disk with the ID r0d12.
spinserver::> raid diskdrives selfteststatus -deviceid r0d12
To stop a disk self-test, use the raid diskdrives stopselftest command. The syntax of the command follows.
raid diskdrives stopselftest -deviceid device_ID
The following example stops the self-test of a disk with the ID r0d12.
spinserver::> raid diskdrives stopselftest -deviceid r0d12
The raid diskdrives updatefirmware command updates the firmware on a specific disk drive in a RAID subsystem. The command has the following syntax.
raid diskdrives updatefirmware -deviceid device_ID -imagefile file_path
Note: To modify the firmware on all physical disks in a RAID subsystem, use the raid subsystems updatediskfirmware command.
The following example updates the firmware of a disk with the ID r0d4 from a firmware image located at /usr/ima/spin.ima.
spinserver::> raid diskdrives updatefirmware -deviceid r0d4 -imagefile /usr/ima/spin.ima
To determine the degree of completion of the update of the firmware on a specific disk in a RAID subsystem, use the raid diskdrives firmwareupdatestatus command. The command has the following syntax.
raid diskdrives firmwareupdatestatus -deviceid device_ID
The following example displays the status of the firmware update for a disk with ID r0d4.
spinserver::> raid diskdrives firmwareupdatestatus -deviceid r0d4
Managing disk enclosures in a RAID subsystem includes the tasks of verifying the enclosure settings and silencing the alarms in the event of an error. The ID of a disk enclosure in a RAID subsystem is in the format rsubsystem_numbereenclosure_number, where subsystem_number indicates the RAID subsystem and enclosure_number indicates the specific enclosure.
To view the settings of RAID or attached expansion JBOD enclosures, use the raid enclosures show command. Disk enclosures are attached by Fibre Channel to the SpinServer. The raid enclosures show command displays information about one disk enclosure or all disk enclosures. To display information about one disk enclosure, use the command with the -deviceid parameter. To display a list of all enclosures in the system, use no parameters. The command displays the following information:
Device name
Status
Manufacturer
Model number
RAID subsystem
World Wide Name
Enclosure service type
Number of populated disk slots
Controller status
Fan status
Power-supply status
Temperature status
Alarm status
UPS status
Daisy-chain status (true or false)
System type (RAID or JBOD)
Temperature warning settings
Temperature failure settings
Alarm-enablement status
The command has the following syntax.
raid enclosures show [-deviceid device_ID]
The following example displays information about all RAID enclosures.
spinserver::> raid enclosures show Device ID Model Status Access Type r0e1 FR15-F22-2SM3. OK OK SES r1e1 FR15-F22-2Sxx. OK OK SES r1e2 FR15-F22-2SM3. OK OK SES
To locate a RAID enclosure, use the raid enclosures locate command. This command causes all of the LEDs on the enclosure to flash. The syntax of the command follows.
raid enclosures locate -deviceid device_ID
The following example causes all of the LEDs on the enclosure named r0e0 to flash.
spinserver::> raid enclosures locate -deviceid r0e0
In the event that there is a problem with a disk enclosure, a beeping sound emanates from the disk enclosure. To silence this alarm, use the raid enclosures mute command. The syntax of the command follows.
raid enclosures mute -deviceid device_ID
The following example silences the alarm on a disk enclosure with the ID r0e1.
spinserver::> raid enclosures mute -deviceid r0e1
Managing the RAID controllers in a RAID subsystem includes the tasks of monitoring controller information and status, updating controller firmware, and taking the controller's partner offline for maintenance. The ID of the RAID controller is in the format rsubsystem_numberccontroller_number, where subsystem_number indicates the RAID subsystem and controller_number indicates the specific RAID controller.
The raid controllers show command displays information about one RAID controller or all RAID controllers in the system. After identification is made, the following information about the RAID controller or controllers is displayed by the system:
Device name
Status
Model number
Firmware version number
RAID subsystem
Enclosure ID
World Wide Name
Cache size
Memory size
Battery backup unit
Number of host ports
Number of drive channels
Bus type
Bus width
Bus speed
Number of physical devices connected to the controller (including itself and its partner)
Number of logical drives
Partner status
Fault tolerant status
Port device name
Number of ports
The command has the following syntax:
raid controllers show [-deviceid device_ID]
The following example displays information about all RAID controllers in a system.
spinserver::> raid controllers show
Device ID Status Model Version Partner
r0c0 Active FFx-2 8.50 Active
r0c1 Active FFx-2 8.50 Active
When maintenance is required on a RAID controller's partner, such as replacing a faulty RAID I/O module, you must take the RAID controller's partner controller offline. To take a RAID controller's partner controller offline, use the raid controllers setpartneroffline command. The command has the following syntax:
raid controllers setpartneroffline -deviceid device_ID
The following example sets the partner of a RAID controller with the ID r0c1 offline:
spinserver::> raid controllers setpartneroffline -deviceid r0c1
When maintenance is complete on a RAID controller's partner, use the raid controllers setpartneronline command to bring the RAID controller's partner controller back online. The command has the following syntax:
raid controllers setpartneronline -deviceid device_ID
The following example sets the partner of a RAID controller with the ID r0c1 online:
spinserver::> raid controllers setpartneronline -deviceid r0c1
Use the raid controllers updatefirmware command to update the firmware for a RAID controller in the system. The command has the following syntax:
raid controllers updatefirmware -deviceid device_ID -imagefile file_path
The following example updates the firmware for a RAID controller with the ID r0c1 with the image located at /usr/ima/spin.ima.
spinserver::> raid controllers updatefirmware -deviceid r0c1 -imagefile /usr/ima/spin.ima
The battery backup unit (BBU) maintains the RAID controller's data in random access memory (RAM) in the event that AC power is lost to the disk storage system. The BBU must be replaced when it can no longer take or hold a charge.
The device identification for the battery backup unit is in the format rsubsystem_numberbbattery_ID, where subsystem_number is the ID of the RAID subsystem and b indicates the BBU.
The raid bbu show command displays information about the BBU. This command can be used without any parameters to display information about all battery backup units in the RAID subsystem or with the -deviceid parameter to display information about a battery backup unit in a specific RAID subsystem. The command displays the following information:
Device ID
Type of battery (for example, NiCAD)
Version number of the RAID controller
Status
Current power (minutes)
Maximum power (minutes)
Charge level (%)
Low-power threshold (minutes)
The current power level of the battery is expressed in minutes of charge. The value changes as the battery is discharged and recharged.
The maximum power is the highest level of charge of the battery. It is expressed in minutes of charge. It changes as the battery ages and is reconditioned. The older the battery, the less charge it can hold.
The charge level is expressed in percentage of the battery's current charge level. The battery is charged to its maximum level when the charge level is 100%.
The syntax of the command follows.
raid bbu show [-deviceid device_ID]
The following example displays information for a BBU with the ID r0b1.
spinserver::> raid bbu show -deviceid r0b1 Device ID r0b1 Type NiCAD Version 1 Status OK Current Power (Min) 1500 Max Power (Min) 1500 Charge Level (%) 100 Low Power Threshold (Min) 1200
The low-power threshold is expressed in minutes of charge that the BBU can hold. If the power level drops below the low-power threshold that you set, an alarm is triggered.
Use the raid bbu modify command to modify the low-power threshold of the BBU. The syntax of the command follows.
raid bbu modify -deviceid device_ID -threshold threshold
The following example sets the low-power threshold of the BBU with ID r0b1 to a value of 1200, so that an alarm is triggered when the BBU's reserve power drops to 1,200 minutes.
spinserver::> raid bbu modify -deviceid r0b1 -threshold 1200
A full battery-reconditioning cycle consists of discharging and recharging the battery. The reconditioning cycle must start with a fully charged battery. Normally, the battery is automatically recharged, but in a new system or in a system that has experienced a power failure, the battery must go through the reconditioning process. A fast recharge occurs when the RAID controller loses power and is powered on again.
The reconditioning cycle must be completed without an interruption of power. Also, do not interrupt the reconditioning cycle by using the raid bbu stop command to stop the reconditioning process. If the cycle is interrupted for any reason, the battery must be recharged and the reconditioning process restarted. The reconditioning process can take several hours.
Under normal usage, a BBU needs to be reconditioned if it has gone through 30 or more discharge/recharge cycles.
Use the raid bbu recondition command to initiate the reconditioning of a BBU. The syntax of the command follows.
raid bbu recondition -deviceid device_ID
The following example initiates the reconditioning of a BBU with the ID r0b1.
spinserver::> raid bbu recondition -deviceid r0b1
Use the raid bbu stop command to stop the reconditioning of a BBU. The command has the following syntax.
raid bbu stop -deviceid device_ID
The following example stops the reconditioning of a BBU with the ID r0b1.
spinserver::> raid bbu stop -deviceid r0b1
If a BBU is fully discharged, it must be recharged before use by the RAID controller. To initiate a fast charge on the BBU, use the raid bbu fastcharge command. The command has the following syntax.
raid bbu fastcharge -deviceid device_ID
The following example initiates a fast charge on the BBU with ID r0b1.
spinserver::> raid bbu fastcharge -deviceid r0b1
If you are using the browser interface, the following confirmation message is displayed:
Are you sure you want to initiate a fast charge on the battery?
Click OK to confirm.
You can schedule automatic consistency checks of RAID sets by using the raid schedules commands.
The raid schedules new command creates a new RAID schedule. A schedule consists of a schedule name, an action to be performed, the device or devices on which the action is performed, and the time interval at which the action is performed. The schedule can initially be enabled or disabled. Currently, the only supported value for the -raidaction parameter is ConsistencyCheck for a RAID consistency check. The command has the following syntax:
raid schedules new -name schedule_name -raidaction action_name -devices device_name_or_pattern -schedule {#-Minutely | hourly | daily | weekly | monthly | yearly} -enabled {true | false}
The following command example creates a RAID schedule named raid.sched.1. It runs a consistency check on all devices named r1s* on a daily basis. It is enabled.
spinserver::> raid schedules new -name raid.sched.1 -raidaction ConsistencyCheck -devices r1s* -schedule daily -enabled true
Use the raid schedules show command to display information about a single RAID schedule (if the -name parameter is specified) or all RAID schedules. The command displays the following information:
Schedule name
Action
Device or devices
Schedule (time interval)
Whether or not the schedule is enabled
Time of next execution (GUI only)
Time of last execution
The command has the following syntax:
raid schedules show [-name schedule_name]
The following command example displays information about all RAID schedules.
spinserver::> raid schedules show Name Action Devices Schedule Enabled? Last Execution raid.sched.1 ConsistencyCheck r0s6 weekly true
The raid schedules modify command enables or disables a RAID schedule. The command has the following syntax:
raid schedules modify -name schedule_name -enabled {true | false}
The following example disables a RAID schedule named raid.sched.1.
spinserver::> raid schedules modify -name raid.sched.1 -enabled false
The raid schedules delete command deletes a RAID schedule. The command has the following syntax:
raid schedules delete -name schedule_name
The following example deletes a RAID schedule named raid.sched.1.
spinserver::> raid schedules delete -name raid.sched.1
Copyright © 2004 Network Appliance, Inc.; copyright © 2003, 2004 Spinnaker Networks, LLC. All rights reserved. Specifications subject to change without notice.